// @ts-ignore
/* eslint-disable */
import { request } from 'umi';

/** 创建点位配置 -- 基本点 POST /api/basicPoint/create */
export async function postApiBasicPointCreate(
  params: {
    // query
    /** 串口配置详情ID */
    deviceDetailId: string;
  },
  body: {
    /** 采集类型
0累积量，1瞬时量 */
    acquisitionType?: 'MOMENTARY' | 'ACCUMULATION';
    /** 名称：数据点值上限
说明：数据点大于上限值将会被过滤掉不会进入下一步处理逻辑；
获取不到该字段的配置时不进行本侧校验。 */
    valueCeiling?: number;
    /** 名称：数据点值下限
说明：数据点小于下限值将会被过滤掉不会进入下一步处理逻辑；
获取不到该字段的配置时不进行本侧校验。 */
    valueFloor?: number;
    /** 名称：首地址偏移
说明：用来表示起始地址
基于0或基于1 */
    offset?: number;
    /** 名称： 变量换算k
说明：
设定计算公式k*x+b中的k */
    k?: number;
    /** 名称： 变量换算b
说明：
设定计算公式k*x+b中的b */
    b?: number;
    /** 名称： 位操作模式 */
    bitMode?: 'NONE' | 'BIT_MODE' | 'BYTE_MODE';
    /** 名称： 位号
说明：整型，范围[0, 15] */
    bitNum?: number;
    /** 名称： 字节号
说明：整型，范围[0, 15] */
    byteNum?: 'LOWER' | 'HIGHER';
    /** 名称：数据标识
说明：整型，
Dlt645-97，范围[0,0xFFFF]
Dlt645-07，范围[0,0xFFFFFFFF] */
    dataId?: string;
    /** 名称： 采集队列频次
说明：安排采集队列时，高频任务复制10份。 */
    freq?: number;
    /** 名称： 处理模式
说明：条件枚举
"1,2,3,4,5,6,7,8"(0),
"2,1,4,3,6,5,8,7"(1),
"3,4,1,2,7,8,5,6"(2),
"4,3,2,1,8,7,6,5"(3),
"5,6,7,8,1,2,3,4"(4),
"6,5,8,7,2,1,4,3"(5),
"7,8,5,6,3,4,1,2"(6),
"8,7,6,5,4,3,2,1"(7)
继承自模板，可修改 */
    endian?: number;
    /** 名称：长度
说明：用于功能码3和4 */
    len?: number;
    /** 名称：功能码
说明：整型枚举值 */
    fc?:
      | 'CIO'
      | 'HR'
      | 'AR'
      | 'LR'
      | 'DM'
      | 'TIMER_OR_COUNTER_PV'
      | 'TIMER_OR_COUNTER_STATUS'
      | 'EM';
    /** 名称：取反标志
说明：采集的布尔值是否需要取反 */
    bitNot?: boolean;
    /** 名称： 起始地址
说明：实际起始地址=
起始地址-首地址偏移 */
    addr?: number;
    /** 名称：解码类型 */
    type?:
      | 'BOOL'
      | 'INTEGER_COMPLEMENT'
      | 'UNSIGNED_INTEGER'
      | 'FLOAT'
      | 'DOUBLE'
      | 'SIGNED_INTEGER';
  },
  options?: { [key: string]: any },
) {
  return request<{
    id?: number;
    deviceDetailId?: number;
    acquisitionType?: 'MOMENTARY' | 'ACCUMULATION';
    driveType?:
      | 'MOD_BUS_RTU'
      | 'MOD_BUS_TCP'
      | 'MOD_BUS_RTU_OVER_TCP'
      | 'DLT645_1997'
      | 'DLT645_2007'
      | 'DATABASE'
      | 'HOST_LINK'
      | 'FINS_COM';
    valueCeiling?: number;
    valueFloor?: number;
    offset?: number;
    k?: number;
    b?: number;
    bitMode?: 'NONE' | 'BIT_MODE' | 'BYTE_MODE';
    bitNum?: number;
    byteNum?: 'LOWER' | 'HIGHER';
    dataId?: string;
    freq?: number;
    endian?: number;
    len?: number;
    fc?:
      | 'CIO'
      | 'HR'
      | 'AR'
      | 'LR'
      | 'DM'
      | 'TIMER_OR_COUNTER_PV'
      | 'TIMER_OR_COUNTER_STATUS'
      | 'EM';
    bitNot?: boolean;
    addr?: number;
    type?:
      | 'BOOL'
      | 'INTEGER_COMPLEMENT'
      | 'UNSIGNED_INTEGER'
      | 'FLOAT'
      | 'DOUBLE'
      | 'SIGNED_INTEGER';
  }>('/api/basicPoint/create', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    params: {
      ...params,
    },
    data: body,
    ...(options || {}),
  });
}

/** 删除一个点位配置 -- 基本点 DELETE /api/basicPoint/remove/${param1} */
export async function deleteApiBasicPointRemove_id_D(
  params: {
    // path
    /** 基本点ID */
    id: string;
    'id:/d/': string;
  },
  options?: { [key: string]: any },
) {
  const { id: param0, 'id:/d/': param1, ...queryParams } = params;
  return request<Record<string, any>>(`/api/basicPoint/remove/${param1}`, {
    method: 'DELETE',
    params: { ...queryParams },
    ...(options || {}),
  });
}

/** 查找一个点位配置 -- 基本点 GET /api/basicPoint/queryOne/${param1} */
export async function getApiBasicPointQueryOne_id_D(
  params: {
    // path
    /** 基本点ID */
    id: string;
    'id:/d/': string;
  },
  options?: { [key: string]: any },
) {
  const { id: param0, 'id:/d/': param1, ...queryParams } = params;
  return request<{
    id?: number;
    deviceDetailId?: number;
    acquisitionType?: 'MOMENTARY' | 'ACCUMULATION';
    driveType?:
      | 'MOD_BUS_RTU'
      | 'MOD_BUS_TCP'
      | 'MOD_BUS_RTU_OVER_TCP'
      | 'DLT645_1997'
      | 'DLT645_2007'
      | 'DATABASE'
      | 'HOST_LINK'
      | 'FINS_COM';
    valueCeiling?: number;
    valueFloor?: number;
    offset?: number;
    k?: number;
    b?: number;
    bitMode?: 'NONE' | 'BIT_MODE' | 'BYTE_MODE';
    bitNum?: number;
    byteNum?: 'LOWER' | 'HIGHER';
    dataId?: string;
    freq?: number;
    endian?: number;
    len?: number;
    fc?:
      | 'CIO'
      | 'HR'
      | 'AR'
      | 'LR'
      | 'DM'
      | 'TIMER_OR_COUNTER_PV'
      | 'TIMER_OR_COUNTER_STATUS'
      | 'EM';
    bitNot?: boolean;
    addr?: number;
    type?:
      | 'BOOL'
      | 'INTEGER_COMPLEMENT'
      | 'UNSIGNED_INTEGER'
      | 'FLOAT'
      | 'DOUBLE'
      | 'SIGNED_INTEGER';
  }>(`/api/basicPoint/queryOne/${param1}`, {
    method: 'GET',
    params: { ...queryParams },
    ...(options || {}),
  });
}

/** 查找串口配置详情下的所有基本点配置 GET /api/basicPoint/queryByDeviceDetail/${param1} */
export async function getApiBasicPointQueryByDeviceDetail_id_D(
  params: {
    // path
    /** 串口配置详情ID */
    id: string;
    'id:/d/': string;
  },
  options?: { [key: string]: any },
) {
  const { id: param0, 'id:/d/': param1, ...queryParams } = params;
  return request<
    {
      id?: number;
      deviceDetailId?: number;
      acquisitionType?: 'MOMENTARY' | 'ACCUMULATION';
      driveType?:
        | 'MOD_BUS_RTU'
        | 'MOD_BUS_TCP'
        | 'MOD_BUS_RTU_OVER_TCP'
        | 'DLT645_1997'
        | 'DLT645_2007'
        | 'DATABASE'
        | 'HOST_LINK'
        | 'FINS_COM';
      valueCeiling?: number;
      valueFloor?: number;
      offset?: number;
      k?: number;
      b?: number;
      bitMode?: 'NONE' | 'BIT_MODE' | 'BYTE_MODE';
      bitNum?: number;
      byteNum?: 'LOWER' | 'HIGHER';
      dataId?: string;
      freq?: number;
      endian?: number;
      len?: number;
      fc?:
        | 'CIO'
        | 'HR'
        | 'AR'
        | 'LR'
        | 'DM'
        | 'TIMER_OR_COUNTER_PV'
        | 'TIMER_OR_COUNTER_STATUS'
        | 'EM';
      bitNot?: boolean;
      addr?: number;
      type?:
        | 'BOOL'
        | 'INTEGER_COMPLEMENT'
        | 'UNSIGNED_INTEGER'
        | 'FLOAT'
        | 'DOUBLE'
        | 'SIGNED_INTEGER';
    }[]
  >(`/api/basicPoint/queryByDeviceDetail/${param1}`, {
    method: 'GET',
    params: { ...queryParams },
    ...(options || {}),
  });
}

/** 编辑点位配置 -- 基本点 PUT /api/basicPoint/update/${param1} */
export async function putApiBasicPointUpdate_id_D(
  params: {
    // path
    /** 基本点ID */
    id: string;
    'id:/d/': string;
  },
  body: {
    /** 采集类型
0累积量，1瞬时量 */
    acquisitionType?: 'MOMENTARY' | 'ACCUMULATION';
    /** 名称：数据点值上限
说明：数据点大于上限值将会被过滤掉不会进入下一步处理逻辑；
获取不到该字段的配置时不进行本侧校验。 */
    valueCeiling?: number;
    /** 名称：数据点值下限
说明：数据点小于下限值将会被过滤掉不会进入下一步处理逻辑；
获取不到该字段的配置时不进行本侧校验。 */
    valueFloor?: number;
    /** 名称：首地址偏移
说明：用来表示起始地址
基于0或基于1 */
    offset?: number;
    /** 名称： 变量换算k
说明：
设定计算公式k*x+b中的k */
    k?: number;
    /** 名称： 变量换算b
说明：
设定计算公式k*x+b中的b */
    b?: number;
    /** 名称： 位操作模式 */
    bitMode?: 'NONE' | 'BIT_MODE' | 'BYTE_MODE';
    /** 名称： 位号
说明：整型，范围[0, 15] */
    bitNum?: number;
    /** 名称： 字节号
说明：整型，范围[0, 15] */
    byteNum?: 'LOWER' | 'HIGHER';
    /** 名称：数据标识
说明：整型，
Dlt645-97，范围[0,0xFFFF]
Dlt645-07，范围[0,0xFFFFFFFF] */
    dataId?: string;
    /** 名称： 采集队列频次
说明：安排采集队列时，高频任务复制10份。 */
    freq?: number;
    /** 名称： 处理模式
说明：条件枚举
"1,2,3,4,5,6,7,8"(0),
"2,1,4,3,6,5,8,7"(1),
"3,4,1,2,7,8,5,6"(2),
"4,3,2,1,8,7,6,5"(3),
"5,6,7,8,1,2,3,4"(4),
"6,5,8,7,2,1,4,3"(5),
"7,8,5,6,3,4,1,2"(6),
"8,7,6,5,4,3,2,1"(7)
继承自模板，可修改 */
    endian?: number;
    /** 名称：长度
说明：用于功能码3和4 */
    len?: number;
    /** 名称：功能码
说明：整型枚举值 */
    fc?:
      | 'CIO'
      | 'HR'
      | 'AR'
      | 'LR'
      | 'DM'
      | 'TIMER_OR_COUNTER_PV'
      | 'TIMER_OR_COUNTER_STATUS'
      | 'EM';
    /** 名称：取反标志
说明：采集的布尔值是否需要取反 */
    bitNot?: boolean;
    /** 名称： 起始地址
说明：实际起始地址=
起始地址-首地址偏移 */
    addr?: number;
    /** 名称：解码类型 */
    type?:
      | 'BOOL'
      | 'INTEGER_COMPLEMENT'
      | 'UNSIGNED_INTEGER'
      | 'FLOAT'
      | 'DOUBLE'
      | 'SIGNED_INTEGER';
  },
  options?: { [key: string]: any },
) {
  const { id: param0, 'id:/d/': param1, ...queryParams } = params;
  return request<{
    id?: number;
    deviceDetailId?: number;
    acquisitionType?: 'MOMENTARY' | 'ACCUMULATION';
    driveType?:
      | 'MOD_BUS_RTU'
      | 'MOD_BUS_TCP'
      | 'MOD_BUS_RTU_OVER_TCP'
      | 'DLT645_1997'
      | 'DLT645_2007'
      | 'DATABASE'
      | 'HOST_LINK'
      | 'FINS_COM';
    valueCeiling?: number;
    valueFloor?: number;
    offset?: number;
    k?: number;
    b?: number;
    bitMode?: 'NONE' | 'BIT_MODE' | 'BYTE_MODE';
    bitNum?: number;
    byteNum?: 'LOWER' | 'HIGHER';
    dataId?: string;
    freq?: number;
    endian?: number;
    len?: number;
    fc?:
      | 'CIO'
      | 'HR'
      | 'AR'
      | 'LR'
      | 'DM'
      | 'TIMER_OR_COUNTER_PV'
      | 'TIMER_OR_COUNTER_STATUS'
      | 'EM';
    bitNot?: boolean;
    addr?: number;
    type?:
      | 'BOOL'
      | 'INTEGER_COMPLEMENT'
      | 'UNSIGNED_INTEGER'
      | 'FLOAT'
      | 'DOUBLE'
      | 'SIGNED_INTEGER';
  }>(`/api/basicPoint/update/${param1}`, {
    method: 'PUT',
    headers: {
      'Content-Type': 'application/json',
    },
    params: { ...queryParams },
    data: body,
    ...(options || {}),
  });
}
